﻿<!DOCTYPE HTML>
<html>
<head>
    <meta charset="utf-8">
    <meta name="renderer" content="webkit|ie-comp|ie-stand">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
    <meta http-equiv="Cache-Control" content="no-siteapp" />
    <!--[if lt IE 9]>
<script type="text/javascript" src="../lib/html5.js"></script>
<script type="text/javascript" src="../lib/respond.min.js"></script>
<script type="text/javascript" src="../lib/PIE_IE678.js"></script>
<![endif]-->
    <link href="../lib/layui/css/layui.css" rel="stylesheet" type="text/css" />
    <link href="../css/H-ui.min.css" rel="stylesheet" type="text/css" />
    <link href="../css/H-ui.admin.css" rel="stylesheet" type="text/css" />
    <link href="../lib/Hui-iconfont/1.0.1/iconfont.css" rel="stylesheet" type="text/css" />
    <!--[if IE 6]>
<script type="text/javascript" src="../lib/DD_belatedPNG_0.0.8a-min.js" ></script>
<script>DD_belatedPNG.fix('*');</script>
<![endif]-->
    <title>包装品出库管理</title>
</head>
<body>
    <div class="pd-5">
        <div class="row cl" id="findfdiv">
            <div class="formControls col-3"></div>
            <div class="formControls col-3">
                <input type="text" class="input-text" placeholder="输入农作物名称" id="findfv1" name="findfv1">
            </div>
            <!--     <div class="formControls col-3">
                <span class="select-box">
                    <select class="select" size="1" name="findinfofv4" id="findinfofv4">
                        <option value="待入库">待出库</option>
                        <option value="出库中">出库中</option>
                        <option value="已出库">已出库</option>
                        <option value="全部">全部</option>
                    </select></span>
            </div>-->
            <div class="formControls col-3">
                <button onclick="hcrainpage()" class="btn btn-success radius" id="" name=""><i class="Hui-iconfont">&#xe665;</i> 查询</button>
            </div>
        </div>
        <div class="cl pd-5 bg-1 bk-gray mt-5 ">
            <div class="form form-horizontal">
                <div class="row cl" style="margin-top: 0px">
                    <div class="col-2"></div>
                    <div class="formControls col-2">
                        <span class="select-box">
                            <select class="select" size="1" name="finouttype" id="finouttype">
                                <option value="发往加工中心">发往加工中心</option>
                                <!--        <option value="自加工出库">自加工出库</option>-->
                                <option value="调整仓库">调整仓库</option>
                                <option value="其它">其它</option>
                            </select>
                        </span>
                    </div>
                    <div class="formControls col-2">
                        <input type="text" class="input-text" placeholder="出库说明" id="foutdesc" name="foutdesc">
                    </div>
                    <label class="form-label col-2">交接人员：</label>
                    <div class="formControls col-2 layui-form">
                        <select name="inoutusernamesel" id='inoutusernamesel' lay-filter="testselect" lay-verify="required" lay-search="">
                            <option value="">直接选择或搜索选择</option>
                        </select>
                    </div>
                    <div class="formControls col-1"><a href="javascript:;" onclick="savetotaskstre()" class="btn btn-primary radius"><i class="Hui-iconfont">&#xe600;</i> 提交</a></div>
                </div>
            </div>
        </div>
        <div id="hcvueapp" class="mt-5 ml-20">
            <div class="panel panel-default" v-for="site in listinfo">
                <div class="panel-header" style="margin: 0px; padding: 0px;">{{ site.fv1 }}--总量：{{ site.storeall }}</div>
                <div class="panel-body" style="margin: 0px; padding: 0px;">
                    <table class="table table-border table-bordered table-hover" style="margin: 0px; padding: 0px;">
                        <thead>
                            <tr>
                                <th>任务信息</th>
                                <th>状态</th>
                                <th>入库量kg/包/包</th>
                                <th>已出库</th>
                                <th>出库量Kg/包/包</th>
                                <th>
                                    <div v-if="site.subinfo2.length >0">规格{{site.subinfo2[0].fv3}}</div>
                                </th>
                                <th>
                                    <div v-if="site.subinfo2.length >1">规格{{site.subinfo2[1].fv3}}</div>
                                </th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr v-for="worklist in site.subinfo" v-bind:class="{ success: (worklist.hasoutall<=worklist.storeall), 'warning':worklist.hasoutall>=worklist.storeall }">
                                <td>{{ worklist.taskno}}-地块：{{ worklist.dkname}}-入库：{{ worklist.dataaddtime.Value}}-采摘：{{ worklist.taskworktime.Value}}</td>
                                <td>{{ worklist.outstate }}-{{ worklist.productstate }}</td>
                                <td>{{ worklist.storeall }}/{{ worklist.storefortype1 }}/{{ worklist.storefortype2 }}</td>
                                <td>{{ worklist.hasoutall }}/{{ worklist.storefortype1out }}/{{ worklist.storefortype2out }}</td>
                                <td>
                                    <input type="text" class="input-text" placeholder="出库量" v-model="worklist.needtoout" onkeyup="this.value=this.value.replace(/[^0-9-.]+/,'');" />
                                </td>
                                <td>
                                   <div v-if="site.subinfo2.length >0"> <input type="number" class="input-text" style="width: 80px;" placeholder="包数" v-model.number="worklist.storefortype1needout" /></div>
                                </td>
                                <td>
                                   <div v-if="site.subinfo2.length >1"> <input type="number" class="input-text" style="width: 80px;" placeholder="包数" v-model.number="worklist.storefortype2needout" /></div>
                                </td>
                            </tr>
                        </tbody>
                    </table>
                </div>
            </div>
            <div class="mt-5 row">
                <div id="page1"></div>
            </div>

        </div>
    </div>

    <script type="text/javascript" src="../lib/layui/layui2.js"></script>
    <script type="text/javascript" src="../js/vue.min.js"></script>
    <script>
        var hcvueapp = new Vue({
            el: '#hcvueapp',
            data: {
                listinfo: []
            },
            methods: {

            }
        })
    </script>
    <script src="../hcjsui/Scripts/jquery-1.9.1.min.js" type="text/javascript"></script>
    <script type="text/javascript" src="../lib/layui/layui.js"></script>
    <script type="text/javascript" src="../lib/layer/1.9.3/layer.js"></script>
    <script type="text/javascript" src="../lib/laypage/1.2/laypage.js"></script>
    <script type="text/javascript" src="../lib/My97DatePicker/WdatePicker.js"></script>
    <script src="../hcjsui/js/_Define.js" type="text/javascript"></script>
    <script type="text/javascript" src="../js/hcui.js"></script>
    <script type="text/javascript" src="../js/hcui_list.js"></script>

    <script type="text/javascript">
        var uiform = null;
        var whereaddinfo = "";
        $(function () {
            spsetBaseNoBt("yw_baseinfo", "id", "yw_baseinfo as T", "*", "#tablelist", "sctaskoutstore", "生产任务管理", "sctaskoutstore");
            layui.use(['form'], function () {
                uiform = layui.form();
                //人员下拉加载 
                hcdoselbyPost("empid  as id,concat(depname,'-',empname) as name,empname as username,mobile as  tel,depname as address", "view_user", "branchid='" + HCUser.HCUorg + "'", "", "", "id",
                    function (data) {
                        SetSelectWithArrayIdName("#inoutusernamesel", data);
                        uiform.render();
                    });
            });

            hcrainpage(1);
        });
        //出库处理
        function savetotaskstre() {
            var needupdate = 0;
            var message = "";//"<input id='ssssssssss'></input>";
            for (var sp in hcvueapp.listinfo) {
                var subinfo = hcvueapp.listinfo[sp].subinfo;
                message += "<br/> " + hcvueapp.listinfo[sp].fv1 + "[";
                for (var lindex in subinfo) {
                    //处理量要大于0
                    if (!hcisbnum(subinfo[lindex].needtoout)) {
                        continue;
                    }
                    //要是数值
                    if (!hcisnum(subinfo[lindex].storefortype1needout)) {
                        continue;
                    }
                    if (!hcisnum(subinfo[lindex].storefortype2needout)) {
                        continue;
                    }
                    needupdate++;
                    message += "(" + subinfo[lindex].needtoout + ")";
                }
                message += "]";
            }
            layer.confirm('确认信息：记录数：' + needupdate + message, {
                btn: [$("#finouttype").val(), '取消'] //按钮
            }, function () {
                // alert($("#ssssssssss").val());
                savetotaskstreDo();
                // layer.msg('的确很重要', { icon: 1 });
            }, function () {
                //layer.msg('也可以这样', {
                //    time: 20000, //20s后自动关闭
                //    btn: ['明白了', '知道了']
                //});
            });
        }
        function savetotaskstreDo() {
            var outguid = NewGuid();
            var needupdate = 0;
            var updatecount = 0;

            for (var sp in hcvueapp.listinfo) {
                var subinfo = hcvueapp.listinfo[sp].subinfo;
                for (var lindex in subinfo) {
                    if (subinfo[lindex].needtoout == null || subinfo[lindex].needtoout == ""
                        || subinfo[lindex].needtoout == " " || subinfo[lindex].needtoout <= 0
                        || isNaN(subinfo[lindex].needtoout)) {
                        continue;
                    }
                    //处理量要大于0
                    if (!hcisbnum(subinfo[lindex].needtoout)) {
                        console.log("1--"); console.log(subinfo[lindex].needtoout);
                        continue;
                    }
                    //信息通用部分
                    var addinfo = "outgid%" + outguid
                        //+ "$outstate%运输中"
                        //+ "$inoutstorestate%待入库"
                        + "$inouttype%" + $("#finouttype").val()
                        + "$outdesc%" + $("#foutdesc").val()
                        + "$dkid%" + subinfo[lindex].dkid
                        + "$dkname%" + subinfo[lindex].dkname
                        + "$taskid%" + subinfo[lindex].taskid
                        + "$taskno%" + subinfo[lindex].taskno
                        + "$tasklistid%" + subinfo[lindex].tasklistid
                        + "$storehouseid%0$hasoutall%0"//默认初始化
                        + "$productid%" + hcvueapp.listinfo[sp].id
                        + "$productname%" + hcvueapp.listinfo[sp].fv1
                        + "$storeall%" + subinfo[lindex].needtoout
                        + "$taskfromorgid%" + subinfo[lindex].taskfromorgid
                        + "$taskfromorgname%" + subinfo[lindex].taskfromorgname
                        + "$storefortype1%" + subinfo[lindex].storefortype1needout
                        + "$storefortype2%" + subinfo[lindex].storefortype2needout
                        + "$taskworktime%" + subinfo[lindex].taskworktime.Value//采摘时间
                        + "$datafromkeyid%" + subinfo[lindex].id
                        + "$productstate%" + subinfo[lindex].productstate
                        + "$jjuserid%" + $("#inoutusernamesel").val()
                        + "$jjusername%" + $("#inoutusernamesel").find("option:selected").text();
                    //+ "$datafromdesc%出库";

                    var addinfototable = "hsc_task_store_out";
                    if ($("#finouttype").val() == "自加工出库") {
                        addinfototable = "hsc_task_process_work";
                        //自加工出库=>加工记录表
                        //信息发货部分
                        addinfo = addinfo
                           + "$outstate%待加工"
                           + "$inoutstorestate%待入库"
                           + "$datafromtable%hsc_task_store"
                           + "$datafromdesc%取原料";
                    }
                    else {
                        addinfototable = "hsc_task_store_out";
                        //发货处理（发到加工中心，调整，其它）=>运输表
                        //信息发货部分
                        addinfo = addinfo
                            + "$outstate%运输中"
                            + "$inoutstorestate%待入库"
                            + "$datafromtable%hsc_task_store"
                            + "$datafromdesc%出库";

                    }
                    hcui_ajaxasync = false;
                    console.log(addinfo);
                    //出库处理-这里要禁用异步
                    hcdoadd2017(addinfototable, addinfo, 1, "", function (info) {
                        //更新记录--已出库
                        if (info == "ok") {
                            updatecount++;
                            hcdoedit("hsc_task_store", "id", subinfo[lindex].id,
                                "outstate%出库中$hasoutall%hcrainself(hasoutall+" + subinfo[lindex].needtoout + ")"
                                + "$storefortype1out%hcrainself(storefortype1out+" + subinfo[lindex].storefortype1needout + ")"
                                + "$storefortype2out%hcrainself(storefortype2out+" + subinfo[lindex].storefortype2needout + ")"
                                , function (info2) {
                                });
                        }
                        else { layer.msg('处理过程有异常：' + info, { icon: 2 }); }
                    });
                    hcui_ajaxasync = true;
                }
            }
            layer.msg('完成操作，记录数：' + updatecount, { icon: 1 });
            //重新加载 
            if (updatecount > 0) {
                hcrainpage(1);
            }


        }
        function hcrainpage(curr) {
            var finddcno = $("#findfv1").val();
            if (finddcno) {
                whereaddinfo = " and fv1 like '%" + finddcno + "%'";
            }
            else { whereaddinfo = ""; }
            $.ajax({
                type: "post",
                url: "../ashx/spui.ashx",
                data: {
                    "action": "getpageinfo",
                    "pagenow": curr || 1,
                    "pagesize": 50,
                    "select": "t.id,t.fv1,t.fv2,0 as storeall",
                    "table": "yw_baseinfo as t",
                    "group": "",
                    "having": "",
                    "where": " type=1 and maintype=1 " + whereaddinfo + " and id in(select productid from hsc_task_store where   databranchid=" + HCUser.HCUorg + " and storehouseid=1 and storeall>hasoutall)",//有库存的
                    "order": "",
                    "subinfo": "id,storefortype1,storefortype2,storefortype1out,storefortype2out,storefortype1-storefortype1out as storefortype1needout ,storefortype2-storefortype2out as storefortype2needout,taskfromorgid,taskfromorgname,taskid,taskno,tasklistid,productname,dkid,dkname,dataaddtime,storeall,storeall-hasoutall as needtoout,lockcout,hasoutall,outstate,taskworktime,productstate#hsc_task_store#productid-@id,databranchid-" + HCUser.HCUorg + ",storehouseid-1,storeall-||>||@@hasoutall#id#",//子查询   当前物品+当前机构+库存大于0
                    "subinfo2": "id,fv1,fv2,fv3,nv1,nv2,nv3#yw_baseinfo#type-7,fv1-@id#nv2#"//7+当前品种
                },
                async: true,
                cache: false,
                error: function (error) {

                },
                success: function (data) {
                    var result = JSON.parse(data);
                    hcvueapp.listinfo = result.data;
                    if (hcvueapp.listinfo == null || hcvueapp.listinfo.length == 0) {
                        //layer.msg('没有更多数据噢', { icon: 5 });
                    }
                    //计算总量
                    hcvueapp.listinfo.forEach(function (e) {
                        e.subinfo.forEach(function (list) {
                            e.storeall = e.storeall * 1 + (list.storeall * 1 - list.hasoutall * 1);
                        });
                    });
                    //显示分页
                    laypage({
                        cont: 'page1', //容器。值支持id名、原生dom对象，jquery对象。【如该容器为】：<div id="page1"></div>
                        pages: result.message || 0, //通过后台拿到的总页数
                        curr: curr || 1, //当前页
                        jump: function (obj, first) { //触发分页后的回调
                            if (!first) { //点击跳页触发函数自身，并传递当前页：obj.curr
                                hcrainpage(obj.curr);
                            }
                        }
                    });

                }
            });
        };

        //重新加载-重载
        function findreolad(isback) {
            hcrainpage(1);
        }
    </script>
</body>
</html>
